package object.homework;

/**
 * 包装类：Integer、Character、Byte、Short、Long、Float、Double、Boolean
 */
public class IntegerDemo {
    public static void main(String[] args) {
        Integer a1 = new Integer(2);
        Integer a2 = new Integer(2);
        System.out.println(a1==a2);//false
        System.out.println(a1.equals(a2));//true,包装类重写了equals()

        // valueOf()
        Integer a3 = Integer.valueOf(4);
        Integer a4 = Integer.valueOf(4);
        System.out.println(a3==a4);//true
        System.out.println(a3.equals(a4));//true

        // 基本类型与包装类型之间互转
        Integer a5 = Integer.valueOf(2);//基本类型->为包装类型
        int a6 = a5.intValue();//包装类型->基本类型

        // 基本类型的取值范围
        int max1 = Integer.MAX_VALUE;
        int min1 = Integer.MIN_VALUE;
        System.out.println("int的最大值为："+max1+",最小值为："+min1);

        long max2 = Long.MAX_VALUE;
        long min2 = Long.MIN_VALUE;
        System.out.println("最大值："+max2+",最小值："+min2);

        double max3 = Double.MAX_VALUE;
        double min3 = Double.MIN_VALUE;
        System.out.println("最大值："+max3+"，最小值："+min3);

        String a7 = "39";
        int a8 = Integer.parseInt(a7);
        System.out.println(a8);

        String a9 = "111.621";
        double a10 = Double.parseDouble(a9);
        System.out.println(a10);

        //Integer m = Integer.valueOf(1);
        Integer m = 1; //基本类型到引用类型
        //int n = m.intValue();
        int n = m; //引用类型到基本类型
    }
}
